Contact validation and trusted contact updating in mobile wireless communications devices

ABSTRACT

A method in a wireless communication device including receiving contact information with a signature from a source ( 310 ) not on a trusted contact list, validating ( 362 ) the signature by comparing the signature to an reference signature stored on the method in a wireless communication device, and updating ( 368 ) the trusted contact list regarding the contact information received if the signature is valid. In some applications, the contact information and signature is associated with a wireless communication device provisioning session request message.

FIELD OF THE INVENTIONS

[0001] The present inventions relate generally to mobile wireless communications, and more particularly to validating communications from unknown contacts, updating trusted contact lists stored on mobile wireless communications devices, session request messages, and methods therefor.

BACKGROUND OF THE INVENTIONS

[0002] Internet Protocol Over The Air (IOTA), Wireless Application Protocol (WAP) provisioning, and PUSH specifications are wireless communication protocols that enable network operators to program and push content to cellular telephone handsets over the air using a WAP enabled browser. The IOTA provisioning protocol has been implemented by Code Division Multiple Access (CDMA) wireless operators, and the WAP provisioning protocol has been implemented by Global System for Mobile Communications (GSM) communication network operators.

[0003] To initiate a WAP provisioning session, a Push Proxy Gateway (PPG) sends an Internet Protocol (IP) message, known as a Session Initiation Request (SIR) or a Hello Request, to the mobile station. An IOTA provisioning session is initiated similarly by sending a session request in the form of a modified Short Message Service (SMS) message, known as a bootstrap request, from an SMS Center (SMSC) to the mobile station.

[0004] In IOTA provisioning sessions, the SMS or bootstrap request contains information enabling the phone browser to fetch Mobile Management Command (MMC) documents from a specified address. MMC documents manage specific parameters in the mobile handset, for example by instructing the handset to read and write phone parameters, to initiate A-key exchange, and update the preferred roaming list (PRL), etc.

[0005] Bootstrap request messages are relatively easy to generate and/or modify. If a phone number and its ESN are known, an unauthorized bootstrap message may be generated and sent to the phone with deceitful instructions to fetch a counterfeit MMC document, which may be used to manipulate the phone, for example by instructing it to perform some action that would provide unauthorized service to a hacker.

[0006] It has been proposed to protect against spoofing and other unauthorized communications by comparing source addresses from which session initiation requests originate with a list of known valid or trusted contacts stored on the wireless handset. Under the proposal, the list of trusted contacts stored in the wireless handset however is static and does not provide for ready address changes, and/or the removal and addition of new trusted contacts.

[0007] The various aspects, features and advantages of the present invention will become more fully apparent to those having ordinary skill in the art upon careful consideration of the following Detailed Description of the Invention with the accompanying drawings described below.

BRIEF DESCRIPTION OF THE DRAWINGS

[0008]FIG. 1 is a communications system according to an exemplary application of the invention.

[0009]FIG. 2 is a process flow diagram for an exemplary application of the invention.

[0010]FIG. 3 is an exemplary communications diagram for several applications of the present invention.

[0011]FIG. 4 is an exemplary wireless communication device provisioning session request message.

DETAILED DESCRIPTION OF THE INVENTIONS

[0012]FIG. 1 illustrates a communications system 100 comprising generally a wireless network 110, for example a CDMA or GSM/GPRS cellular network or some other wireless network infrastructure, for providing communication services to wireless communications devices.

[0013] The wireless communication device may be a mobile wireless handset 120, for example a CDMA or GSM/GPRS or some other mobile communications device. FIG. 2 is an exemplary wireless communication device 200 comprising generally a processor 210 coupled to memory 220 for example RAM and ROM, and in some embodiments a SIM, USIM, R-UIM, NVM, etc. The processor is also coupled to a radio transceiver 230 and a display device 240. The processor is also coupled to input 250, for example a microphone and data ports, and outputs 260, for example a speaker and data ports.

[0014] In FIG. 1, the wireless communications network 110 is coupled to a gateway 130, which is coupled to a server 140. In Internet Over the Air (IOTA) provisioning applications, now required by many CDMA wireless operators providing voice and data services, the server 140 is an IOTA provisioning server, and the gateway 130 is a provisioning gateway, for example a Wireless Application Protocol (WAP) provisioning gateway. In the exemplary embodiment, the wireless network 110 includes a Short Message Service Servicing Center (SMSC). In WAP and other provisioning applications, the server and gateway may be identified differently, but these and the other exemplary designations are not intended to limit the invention.

[0015] A wireless communications device session request is initiated generally from a server, although the origination point for the session request may be some other source communicating with the server. Particularly, in the process-flow diagram 300 of FIG. 3, at block 310, a Push Proxy Gateway (PPG) sends a SIR or Hello Request to the client. In other embodiments, more generally, the session request may originate from some other server, and in a format other than an SIR, for example a bootstrap request.

[0016] In FIG. 3, at block 310, the session request generally includes information about the source of the requester, for example its IP address or some other information, which may be used to validate the trustworthiness of the sender or the origin of the session request.

[0017] In the exemplary application, session request is wireless communication device provisioning session request, for example, a bootstrap request or a Session Initiation Request (SIR) or some other provisioning session request. In other applications, more generally, the session request may be a request for a session other than a wireless device provisioning session.

[0018] In FIG. 1, the session request is typically communicated from the server 140 to a gateway and then to the communications network, which communicates or pushes the session request to the mobile handset. In the exemplary IOTA provisioning application, illustrated in FIG. 4, the IOTA/PUSH provisioning server 410 creates a bootstrap request message 402 and sends it to a WAP provisioning or push gateway 420, which forwards the bootstrap message to the wireless communications network 430, for example to an SMSC thereof. The wireless communications network sends the message to the mobile handset 440. The communication of the request from the server to the mobile station is identified at communication thread 450.

[0019] In FIG. 3, at block 320, the client or handset receives the session request, which must be validated. In some embodiments, at block 330, the session request is validated by comparison thereof with a list of trusted contact sources stored on the mobile station or handset, for example by comparing the IP address of the server with a list of valid addresses.

[0020] The list of trusted sources may be obtained by the mobile station from the network and updated periodically. The list of trusted sources is stored in memory on the mobile station, for example in a SIM, USIM, R-UIM, NVM, etc.

[0021] In other applications, validation of the session request may be performed at the network rather than at the mobile handset, for example the mobile handset may transmit the session request message or relevant portion thereof, for example the IP address, to the network for validation. The mobile handset and network are generally capable of conducting secured communications, discussed further below, which would ensure the integrity of validation transactions performed at of by the network.

[0022] In FIG. 4, if the source of the session request is not on the list of trusted contacts, in some applications the mobile station may reject the request, as indicated at communication 452. The rejection of the session request is preferably a default response where the origin of the session request not validated, for example by the mobile station or the network.

[0023] In FIG. 4, at signature request 454, the server sending a provisioning session request to the client requests a signature from the wireless communications network or some other authorizing source recognized by the wireless device. At communication 456, the network transmits the signature to the server in response to the request 454.

[0024] The signature is generally authenticating information received by the server from the network for presentation to the wireless device for the purpose of authenticating the trustworthiness of the server as a source of information for at least the transaction or session with which the signature is associated. In one embodiment, the signature is valid for only the session with which is it associated. More generally the signature may be valid for a certain specified time period, for example it may have an expiration period or time stamp associated therewith.

[0025] In FIG. 4, in some applications, the server 410 requests the signature from the network 430 after first sending a session request without the signature and upon receiving a session rejection from the mobile station 440, for example for lack of trustworthiness upon comparison of the session request to a list of trustworthy contact points or sources. In other applications, the server 410 requests the signature from the network 430 before or without first sending the session request message without authenticating signature data. Thus in some applications, steps 450 and 452 of FIG. 4 are unnecessary and may be omitted by first requesting signature from the network or other authorizing source.

[0026] The signature is generally combined with the session request message, for example in a header thereof, by the server and thus transmitted with the session request. In FIG. 4, upon receiving the authenticating signature from the network 430 or other source, in response to the signature request 454, the signature is combined with the session request message, for example by placing it in the message header or by otherwise combining the signature and message, the particulars of which are not intended to limit the invention. The combining step may be performed at the server or at some other location. In FIG. 3, the signature, which may also be considered a security key, is added to the message at block 340.

[0027]FIG. 5 is an exemplary wireless communication device provisioning session request message comprising generally a message header portion 510 and a message body portion 520. In one embodiment, the message header message portion includes a signature data field for receiving authenticating signature data from a network service provider that may be used to validate the trustworthiness of the session request source. In other embodiments, however, the authorizing signature may be combined with the message by means other than placement in a header data field, for example it may be appended or otherwise concatenated with the session request.

[0028] In the exemplary embodiment of FIG. 5, the message header includes a signature data field 512 for storing authorizing signature data received from the network. As noted, in one embodiment, the session request message is a Wireless Application Protocol Session Initiation Request, and in another embodiment it is an Internet Over the Air (IOTA) bootstrap request.

[0029] In FIG. 4, the signature must also be provided to the mobile station 440 by the network 430, so that the mobile station can validate the signature received from the server 410. In FIG. 4, the signature is communicated from the network 430 to the mobile station 440 in a series of related communications therebetween, which are identified by the group of communication threads 460.

[0030] In one embodiment, the network initiates a Shared Secret Data (SSD) Update procedure followed by a Unique Challenge Response procedure. As the result of these known communication procedures, both the network and the phone are capable of independently generating identical data, values, signature, or keys, etc. The network may also generate an SSD through any of the known Hash algorithms or techniques. In alternative embodiments, other procedures may be used for communicating secured information between the network and mobile station.

[0031] In FIG. 4, in some applications, the signature is transmitted to the mobile station 440 only after the server 410 makes the signature request 454. More generally, however, the signature may be communicated to the mobile station 440 any time before the signature request 454 by the server as indicated in FIG. 4 by arrow 461.

[0032] The signature communicated to the mobile station is effective at least for validating the session request from the server. More generally, however, the signature may be effective for a more extended time period, for example by associating therewith a time stamp upon the expiration of which a new or updated signature must be acquired. The mobile station may thus store the signature from the network for later use.

[0033] In FIG. 4, upon receiving the signature from the network or other authorizing source and combining it with session request, the server 410 transmits, or re-transmits, the session request and signature to the mobile station 440, as indicated in communication thread 458.

[0034] In FIG. 4, at validation process 462, the mobile station validates the signature associated with the session request 458, communicated by comparing it to a signature received directly from the network or authorizing source, also referred to herein as the reference signature.

[0035] In FIG. 4, at process 464, if the signature is valid, the session request is processed at the mobile station 440, for example the mobile station may subsequently fetch an MMC document or push content. In some applications, upon validating signature, the mobile station first communicate acceptance to the server 410, at acceptance communication 466, before processing the session request.

[0036] In FIG. 4, the list of trusted contacts may be updated, at 468, relative to the requestor of the signature session if the signature of the signature session is valid. In some applications, the trusted contact list is updated with contact information received with the session request if the signature is valid. For example, the requestor of the session may be added to the list of trusted contacts stored on the wireless communication device. In FIG. 3, at block 340, a contact point is appended to a user list.

[0037] In other embodiments, the contacts or entries trusted contacts list have an expiration period associated therewith. Upon expiration of the time period, the trustworthiness of the contact may be re-established by submission or re-submission of an authorizing signature to the mobile station from the network. In these cases, the contact list clock is reset for a particular contact on the list upon receipt of the authorizing signature, without the need adding a new contact to the list. In other embodiments, contacts may be removed from the list or otherwise unauthorized.

[0038] Upon updating the contact list stored at either the mobile station or the network or both, it is unnecessary for the server or sender of the session request to subsequently obtain a signature from the network or authorizing source. Dynamically updating a trusted contact list stored on the mobile device also enables the device to roam freely without being dependent on a single source for trusted contact list updates.

[0039] While the present inventions and what are considered presently to be the best modes thereof have been described in a manner that establishes possession thereof by the inventors and enabling of those having ordinary skill in the art to make and use the inventions, it will be understood and appreciated that there are many equivalents to the exemplary embodiments disclosed herein and that myriad modifications and variations may be made thereto without departing from the scope and spirit of the inventions, which are to be limited not by the exemplary embodiments but by the appended claims. 

What is claimed is:
 1. A method in a wireless communication device, comprising: receiving a session request; rejecting the session request; receiving a signature session request having a signature after the rejecting the session request; validating the signature of the signature session request.
 2. The method of claim 1, validating the signature of the signature session request by comparing the signature thereof to information stored on the wireless communication device.
 3. The method of claim 1, generating a reference signature on the wireless communication device from information received from a trusted source, validating the signature of the signature session request by comparing the signature of the signature session request to the reference signature generated on the wireless communication device.
 4. The method of Clam 3, generating the reference signature before receiving and rejecting the session request.
 5. The method of claim 3, generating the reference signature after rejecting the session request.
 6. The method of claim 1, rejecting the session request if a requester of the session is not on a list of trusted contacts stored on the wireless communication device.
 7. The method of claim 1, rejecting the session request if a requestor of the session is not on a list of trusted contacts.
 8. The method of claim 7, validating the signature of the signature session request by comparing it to a reference signature stored on the wireless communication device.
 9. The method of claim 6, adding the requester of the session to the list of trusted contacts stored on the wireless communication device if the signature of the session is valid.
 10. The method of claim 1, updating a list of trusted contacts relative to a requester of the signature session if the signature of the signature session is valid.
 11. The method of claim 1, validating the session request by determining whether a requester of the session is on a list of trusted contacts stored on the wireless communication device.
 12. A method in a wireless communication device, comprising: storing a reference signature from a trusted source on the wireless communication device; receiving a session request message having an authenticating signature; validating the authenticating signature of the session request by comparing the authenticating signature of the session request message to the reference signature on the method in a wireless communication device.
 13. The method of claim 12, adding a requester of the session to a list of trusted contacts if the authenticating signature of the session request is valid.
 14. The method of claim 12, generating the reference signature on the wireless communication device from information received from a trusted source before receiving the session request.
 15. The method of claim 12, generating a new reference signature on the wireless communication device from information received from a trusted source upon expiration of a previously stored reference signature.
 16. A method in a wireless communication device, comprising: receiving contact information with a signature from a source not on a trusted contact list; validating the signature by comparing the signature to an reference signature stored on the method in a wireless communication device; updating the trusted contact list regarding the contact information received if the signature is valid.
 17. The method of claim 16, generating the reference signature on the wireless communication device from information received from a trusted source.
 18. The method of claim 16, determining whether the contact information with the signature is from a trusted source by determining whether the contact information is on a trusted contact list stored on the wireless communication device.
 19. A wireless communication device provisioning session request message, comprising: a message header portion, the header message portion including authenticating signature data from a network service provider; message body portion.
 20. The method of claim 19, the provisioning session request message is a Wireless Application Protocol Session Initiation Request.
 21. The method of claim 19, the provisioning session request message is an Internet Over the Air bootstrap request.
 22. A method in a server communicating with a wireless communications network, the method comprising: requesting a signature from the wireless communications network; sending a session request including an authenticating signature to a mobile wireless communication device in the wireless communications network.
 23. The method of claim 22, receiving information from the wireless communications network in response to the request for a signature, generating the session request including the authenticating signature based upon the information received from the wireless communications network.
 24. A method in a wireless communication device, comprising: receiving a wireless communication device provisioning session request message having an authenticating signature; validating the authenticating signature of the wireless communication device provisioning session request message by comparing the authenticating signature to a reference signature at the wireless communication device. 